aboutsummaryrefslogtreecommitdiff
path: root/src/routes/projects/[id]
diff options
context:
space:
mode:
authorMartin Kagamino Lehoux <martin@lehoux.net>2026-09-07 19:17:45 +0200
committerMartin Kagamino Lehoux <martin@lehoux.net>2026-09-07 19:17:45 +0200
commit37573109a05a07ac50827759ea63793209baa73a (patch)
tree62c5004bb006eb6ec03830f069b0d26a112e72ab /src/routes/projects/[id]
parent1b96084da4ea317b06d92f4d493d102059599009 (diff)
Add routine detail page with editable description and health history
Diffstat (limited to 'src/routes/projects/[id]')
-rw-r--r--src/routes/projects/[id]/+page.server.ts7
-rw-r--r--src/routes/projects/[id]/+page.svelte12
2 files changed, 14 insertions, 5 deletions
diff --git a/src/routes/projects/[id]/+page.server.ts b/src/routes/projects/[id]/+page.server.ts
index b20af6c..e3c4edf 100644
--- a/src/routes/projects/[id]/+page.server.ts
+++ b/src/routes/projects/[id]/+page.server.ts
@@ -60,11 +60,10 @@ export const actions: Actions = {
return fail(400, { error: 'Le nom est requis' });
}
try {
- await edit(
- numericId(data.get('id')),
+ await edit(numericId(data.get('id')), {
name,
- parseFrequencyDays(data.get('frequencyDays')),
- );
+ frequencyDays: parseFrequencyDays(data.get('frequencyDays')),
+ });
} catch {
return fail(400, { error: 'Modification invalide' });
}
diff --git a/src/routes/projects/[id]/+page.svelte b/src/routes/projects/[id]/+page.svelte
index d9747a9..608bbbb 100644
--- a/src/routes/projects/[id]/+page.svelte
+++ b/src/routes/projects/[id]/+page.svelte
@@ -159,7 +159,11 @@
</form>
{:else}
<div class="routine-info">
- <span class="routine-name">{routine.name}</span>
+ <a
+ class="routine-name"
+ href="/projects/{data.project.id}/routine/{routine.id}"
+ >{routine.name}</a
+ >
<span class="routine-meta">
{formatFrequency(routine.frequencyDays)}
{#if routine.lastDoneAt}
@@ -229,6 +233,12 @@
.routine-name {
font-weight: 500;
+ color: var(--text);
+ text-decoration: none;
+ }
+
+ .routine-name:hover {
+ color: var(--accent);
}
.routine-meta {